package com.dongzili.common.vo;

import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;

import java.util.List;
import java.util.Map;

@Getter
@Setter
@AllArgsConstructor
public class PageRequest<T> {

    /** 当前页数，从1开始 */
    private Integer current;
    /** 每页记录数 **/
    private Integer size;
    /** 总数 **/
    private Integer total;
    /**搜索关键字*/
    private String keyword;
    /** 请求数据实体 */
    @Valid
    private T entity;
    /** 请求数据实体数组 */
    @Valid
    private List<T> entities;
    /** 消息ID */
    private String messageId;
    /** 模糊搜索承载实体 */
    private T likeEntity ;
    /** 排除范围查询实体 */
    private T notInEntity ;
    /** 排序字段 */
    private List<OrderVo> orders;
    /** 根据指定时间区间查询字段 */
    private Map<String, QueryPeriodVo> queryPeriod;


    public PageRequest() {
        current = 1;
        size = 10;
    }
}